#include <stdio.h>
#include <unistd.h>
#include <sys/wait.h>
#include <signal.h>
#include <stdlib.h>

void sigcallback(int sig)
{
    printf("i recv sig num is [%d]\n", sig);
    wait(NULL);
}

int main()
{
    signal(SIGCHLD, sigcallback);
    pid_t ret = fork();
    if(ret < 0)
    {
        perror("fork");
        return 0;
    }
    else if(ret == 0)
    {
        printf("i am child 我要退出了\n");
        sleep(5);
        exit(1);
    }
    else
    {
        sleep(1);
        printf("i am father\n");
        while(1)
        {
            printf("我不听\n");
            sleep(2);
        }
    }
    return 0;
}
